
//  书写请求拦截器
import axios from "axios"

// 获取axios实例，(instance实例)
const instance = axios.create({
    baseURL: "https://www.ahsj.link/nebula-api",
    timeout: 5000
})

// 拦截器  技术要点     请求拦截
instance.interceptors.request.use(config => {
    // console.log(config);  //config本次请求的一些信息，包含请求头，请求方式等。。。
    // 可以做一些请求前的准备工作
    // 例如：可以获取token值，检测用户是否登录,如果登录了，可以在请求头中写带登录凭证token
    let token = localStorage.getItem("token")
    if (token) {
        config.headers["x-auth-token"] = token
    }
    return config
}, err => {
    return Promise.reject(err)
})

instance.interceptors.response.use(res => {
    // 这个函数在接收到响应之后，执行组件的then方法之前先执行这里的代码
    // console.log("res是：", res);
    return res.data
    // return 后面的值(res)被then方法的res接收了
}, err => {
    return Promise.reject(err)
})

export default instance